home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: delta / whiteline CD Series - delta.iso / progtool / modula2 / module / popupmen.def < prev    next >
Text File  |  1995-11-25  |  4KB  |  77 lines

  1. (******************************************************************************)
  2. (*      This MODULE is Public Domain. Copy me like a beast!                   *)
  3. (*               Christian Ledermann                                          *)
  4. (*               Wölfelkofen 2                                                *)
  5. (*               84166 Adlkofen                                               *)
  6. (******************************************************************************)
  7. (*                                                                            *)
  8. (* Started:   20.12.92     03:54:30                                           *)
  9. (* Version: 20.12.89   01:284:12:54                                           *)
  10. (*                                                                            *)
  11. (******************************************************************************)
  12. (*                                                                            *)
  13. (* Diese Software ist ohne jede Garantie. Ich verspreche                      *)
  14. (* keinerlei Wartung und übernehme keine Verantwortung für Schäden die        *)
  15. (* durch die Benutzung dieses Programmes entstehen.                           *)
  16. (* Jegliche Ersatzansprüche lehne ich ab.                                     *)
  17. (*                                                                            *)
  18. (******************************************************************************)
  19. DEFINITION MODULE PopUpMenue;
  20.  
  21. FROM SYSTEM IMPORT ADDRESS;
  22.  
  23. (***********      Pop-Up Menüs      *******************)
  24. (* Ein PopUp Menü besteht wie ein normales Menü aus   *)
  25. (* einem "Kasten" in dem übereinander mehrere Text-   *)
  26. (* einträge stehen. Der Kasten ist das Vaterobjekt    *)
  27. (* und vom Typ GraphicBox, die Einträge sind die      *)
  28. (* Kinder und vom Typ GraphicString. Da dieses Pop-Up *)
  29. (* wie ein normales Menü aussieht und auch so         *)
  30. (* funktioniert sollte man sich an die allgemeinen    *)
  31. (* Konvetionen halten, d.h. vor jedem Eintrag 2 Leer- *)
  32. (* zeichen für das "Checked-Häkchen" freilassen und   *)
  33. (* am Ende ein Leerzeichen. Bei Bedarf sind Trenn-    *)
  34. (* striche und Eintäge vom Typ 'disabled String'      *)
  35. (* zulässig. Es hat sich eingebürgert das das Vater-  *)
  36. (* objekt (die GraphicBox) den Objectstate shadowed   *)
  37. (* hat, also schattiert ist.                          *)
  38. (* Dieses MODULE baut nicht auf den betriebssystem-   *)
  39. (* eigenen Pop-Ups des AES 4.x auf und ist somit      *)
  40. (* auch auf älteren Rechnern einsetzbar.              *)
  41. (******************************************************)
  42.  
  43. PROCEDURE PopUp(x,y:INTEGER; PopTree:ADDRESS ) : INTEGER;
  44. (*********** Pop-Up Menü zeichnen **********************)
  45. (* Zeichnet an der Stelle x,y ein Pop-Up Menü auf den  *)
  46. (* Bildshirm. PopTree ist die ADDRESSe des Baumes des  *)
  47. (* Pop-Up Menüs, zu ermitteln mit:                     *)
  48. (* AES.ResourceGetAddr(0,NummerDesMenüs,PopTree)       *)
  49. (* Rückgabe : Das Feld das zum Verlassen des Menüs     *)
  50. (* angeklickt wurde oder -1 falls ausserhalb des Menüs *)
  51. (* die Maustaste betätigt wurde.                       *)
  52. (* PopUp funktioniert mit allen TOS-Versionen ab 1.0   *)
  53. (* Achtung! Diese Funktion ruft nicht selbständdig     *)
  54. (* WindowUpdate auf! Für daraus resultierenden Bild-   *)
  55. (* schirmmüll sind Sie selber verantwortlich!          *)
  56. (* Selbstverständlich können Shortcuts im RSC definiert*)
  57. (* werden. Die Tastendrücke werden selbsttätig den     *)
  58. (* Menüeinträgen zugeordnet.                           *)
  59. (*******************************************************)
  60.  
  61. (***************************************************************)
  62. (* Einige PROCEDUREn die den Umgang mit den Pop-Up Menüs       *)
  63. (* so vereinfachen wie es von den 'normalen' Menüs gewohnt ist *)
  64. (***************************************************************)
  65.  
  66. PROCEDURE PopUpMenuItemCheck(Tree : ADDRESS; Item :INTEGER; Check :BOOLEAN);
  67. (* Display or erase a check mark next to a pop-up menu item *)
  68. (* TRUE = checked, FALSE = NOT checked                      *)
  69.  
  70. PROCEDURE PopUpMenuItemEnable (Tree: ADDRESS; Item:INTEGER;  Enable: BOOLEAN);
  71. (* Enables or disables a pop-up menu item *)
  72. (* TRUE = enable, FALSE= disable          *)
  73.  
  74.  
  75.  
  76. END PopUpMenue.
  77.